package com.yxjx.duoxue.user;

import java.io.IOException;

import org.apache.http.ParseException;
import org.json.JSONException;

import android.content.Context;

import com.yxjx.duoxue.Yx;
import com.yxjx.duoxue.dao.Dao;
import com.yxjx.duoxue.network.URMobileCheckResponse;
import com.yxjx.duoxue.network.UserLoginResponse;
import com.yxjx.duoxue.network.UserReg;
import com.yxjx.duoxue.utils.Utils;

public class UserLogin {
    // 如果保存了用户名和密码，则尝试登录。登录成功则登录，否则，清空登录状态。
    public static boolean tryUserLogin(Context context) {
    	try {
    		// 重新登录
    		if (Utils.isReadyForLogin(context)) {
    			String phoneNum = Utils.getValueFromSharedPreference(context, Yx.KEY_PHONE_NUM);
    			String pwd = Utils.getValueFromSharedPreference(context, Yx.KEY_PHONE_PASSWORD);
    			URMobileCheckResponse rsp;
    			rsp = UserReg.salt(phoneNum);
    			UserLoginResponse ret = UserReg.userLogin(context, rsp, phoneNum, pwd);
    			Dao.setUlRsp(context, ret);
    			if (ret.isOk()) {
    				Utils.logd("登录成功");
    				Dao.setUlRsp(context, ret);
    			}
    		} else {
				// 清空登录信息
				Utils.logd("登录失败");
				// 未清空登入名，保留用户名和密码
				Utils.writeToSharePreference(context, 
						Yx.KEY_SESSION_KEY, "");
				Utils.writeToSharePreference(context, 
						Yx.KEY_SID, "");
				Utils.writeToSharePreference(context, 
						Yx.KEY_UID, "");
			}

		} catch (ParseException e) {
			e.printStackTrace();
		} catch (JSONException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
    	return true;
    }

}
